package com.xbongbong.paas.service;

import com.xbongbong.paas.toolbox.exception.XbbException;

/**
 * @author youli.chen
 * @version v1.0
 * @description: 录音文件方法
 * @date 2019/3/13 16:56
 * @since v1.0
 */
public interface AudioFileService {

    /**
     * 获取远程mp3文件的时长
     *
     * @param url mp3文件的url
     * @return 时长（单位：秒）
     * @throws XbbException 封装的业务异常
     */
    int getMp3TimeSeconds(String url) throws XbbException;

    /**
     * 从网络的Url中下载文件，自动判断请求方式是http还是https
     *
     * @param urlStr   路径地址
     * @param fileName 文件名
     * @param savePath 存储路径
     * @return String 文件路径
     * @throws Exception io异常
     */
    String downloadFromUrl(String urlStr, String fileName, String savePath) throws Exception;

    /**
     * 将本地文件上传至阿里云
     *
     * @param corpid   公司ID
     * @param filePath 文件路径
     * @return 阿里云Oss存储地址
     */
    String upload2AliyunOss(String corpid, String filePath);

    /**
     * 判断文件夹是否存在，没有则新建
     *
     * @param path 文件夹路径
     */
    void checkDirExists(String path);
}
